The present invention relates generally to a method and apparatus for controlling the routing of documents from document servers to output devices via a mobile computing device, and more specifically, to a mobile computing device for bridging communications between a document server and an output device that operate on separate networks with no adequate preexisting connectivity.
Generally, while the use of mobile computing devices continues to increase, they continue to have limited storage capacities. Thus, although it may be possible to store documents on mobile devices, the size and number of documents stored on mobile computing devices is limited. In addition, since documents continue to increase in size because they include combinations of text, graphics, images, audio, and video, there exists a need for a capability to manage documents on mobile devices without requiring that they be physically present on the devices.
Besides the problem of limited storage on mobile computing devices, documents may need to be accessed in real time because they have been recently created or modified. That is, even if a document has been stored on a mobile computing device, a user may need to access the document from another location because recent updates are not incorporated in the document stored on the mobile computing device. Alternatively, real time access to documents may be desirable when unexpected access to a document that was not previously planned for is required and that document is not stored on the mobile computing device.
Token-enabled mobile computing devices provide one solution to these problems (hereinafter referred to as “the original token-based environment”). The original token-based environment is described in the following patent and patent applications, which are hereby incorporated herein by reference: U.S. Pat. Nos. 5,862,321 and 6,144,997 (entitled: “System and Method for Accessing and Distributing Electronic Documents”); U.S. Pat. No. 6,515,988 (entitled: “Token-Based Document Transactions”); U.S. Pat. No. 6,421,716 (entitled “System For Generating Context-Sensitive Hierarchically Ordered Document Service Menus”); U.S. Pat. No. 6,397,261 (entitled “Secure Token-Based Document Server”); U.S. Pat. No. 6,487,189 (entitled “Mobile Email Document Transaction Service”); U.S. Pat. No. 6,430,601 (entitled “Mobile Document Paging Service”); and U.S. Pat. No. 6,493,760 (entitled “Standalone Device For Identifying Available Document Services In A Token Enabled Operating Environment”).
The original token-based environment distributes references to documents between mobile computing devices by transmission of the document references, rather than the documents themselves. More specifically, a mobile computing device described in the original token-based environment is adapted to store a collection of document identifiers (e.g., a URL “Uniform Resource Locator”). Each document identifier in the collection identifies a particular document, or service. Each mobile computing device thus holds document references, rather than the documents themselves, thereby eliminating the concern of storage capacity of the mobile computing device. Large documents containing any form of data can therefore apparently be carried using a mobile device and used to construct a print transaction request that can itself be submitted to a remote service such as a print service.
Mobile computing devices operating in the original token-based environment are thus programmed to receive, transmit, and store document identifiers. Each document identifier stored on a mobile computing device is associated with an electronic document stored in an electronic repository. In the original token-based environment, a document can be sent to a token-enabled (e.g., an IR transceiver equipped) network printer by “beaming” a document token, which references the document, from a mobile computing device to the network printer. The token-enabled network printer retrieves the complete document referenced by the document token, and immediately prints a copy of the document. So, to a user of the mobile computing device, documents are apparently passed between users, and output from, or input to token-enabled devices coupled to networks as expansive as the Internet.
In general, the original token-based environment provides that only a small amount of document data (e.g., document name and location) relating to a document is actually stored on the mobile computing device. Typically this is not a disadvantage since most mobile computing devices have a small display (or user interface) that limits the extent to which documents may be viewed. More importantly, this is not a disadvantage because mobile computing devices generally do not have application specific software installed which would impose additional storage and processing requirements for enabling the viewing and/or editing of documents stored in a particular application dependent format. For example, a document stored in the Microsoft® Word format cannot be displayed without software adapted to interpret that specific format. Thus, more generally it is not helpful to store documents on mobile computing devices because there tends to be inadequate storage and/or processing capacity for application software and data.
Presently, “non-token enabled” mobile computing devices operate using application specific and device specific programs that enable printing from a PDA (Personal Digital Assistant) to a standalone infrared (IR) enabled printer. For example, application specific programs that operate on a PDA such as Quickoffice™ sold by Cutting Edge Software, Inc. allow a user to create, edit, and view documents in the Microsoft® Word format. In addition, printer (more generally device) specific programs operate with the application specific software such as PrintBoy™ sold by Cutting Edge Software, Inc. to enable beaming from a PDA to a standalone IR enabled printer through the printer's IR port.
In addition to requiring application specific and device specific programs, such non-token enabled mobile computing devices must be pre-configured with print drivers to render documents in particular printer dependent formats (e.g., postscript, PCL). In particular, less expensive printers tend to require more specific print drivers (i.e., more printer dependent) than more expensive printers. Absent specific printer dependent drivers, documents stored directly on such non-token enabled mobile devices cannot be readily rendered to a format that will insure the most accurate reproduction of a document when beamed to the standalone IR enabled printer. A disadvantage of such non-token enabled mobile computing devices over token-enabled mobile computing devices is that they only allow printing of documents stored directly on the PDA. An additional disadvantage of such non-token enabled mobile computing devices with application specific software loaded thereon is that the application specific software may not be exactly compatible with the original software that created a document. This incompatibility in software may cause the document to be rendered (i.e., print, view, etc.) at the mobile computing device different from the document creation software.
Unlike non-token enabled mobile computing devices, the mobile computing devices that are token-enabled with the original token-based environment (i.e., token-enabled mobile computing devices) do not require that application specific programs or print drivers be loaded directly onto the mobile computing device. Instead, a device such as a printer is token-enabled when it is has access to hardware and device specific software that enables it to receive both a document service request (over a wireless network), and the document to which the document service request references (over a wired network from a remote server coupled thereto). Token-enabling devices thus advantageously permits documents stored at locations other than directly on the mobile computing device to be output to devices such as printers.
However, because many output devices are not token-enabled, their services (e.g., printing, faxing, displaying, playing, etc.) are not immediately available to mobile computing devices that are token-enabled (i.e., loaded with a token-enabling device specific software). Devices not equipped to transmit, receive, and manage document tokens (i.e., non token-enabled devices), however, can be made token-enabled with the addition of a token-enabler unit (e.g., an infra-red transceiver, and associated computer and software). In this configuration, the non-token enabled device mounted with a token-enabler unit is made token-enabled as long as it has an existing network connection with a token-enabled server, as described in U.S. Pat. No. 6,493,760.
However even with the token-enabler unit, some token-enabled mobile computing devices may continue to have no connectivity with output devices that remain non token-enabled because there is no existing network connection between a token-enabled server and the output device. In addition, some token-enabled mobile computing devices may suffer from inadequate preexisting connectivity with token-enabled output devices. Inadequate preexisting connectivity (i.e., can't adequately get from a source to a destination) may exist when circumstances make it more advantageous to communicate with a token-enabled device over one communications channel instead of another. For example, printing in an existing token-based network may require that the content of the document be transmitted from a token-enabled server over an insecure and/or unreliable network such as the Internet to a printer.
There exists therefore a desire to provide an improved path for routing document service request originating at a mobile computing device and taking place between a token-based server and an output device that has either no existing network connectivity or inadequate network connectivity with the token-based server. It would be further desirable if such an improved path for routing documents would provide increased security (e.g., a secure channel) and/or reliability (e.g., guaranteed bandwidth) in the event there is an existing but inadequate connection between the token-based server and the output device.